<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>个人文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <script src="./libs/jquery-1.12.4.min.js"></script>

</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            用户信息修改
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputEmail1" class="col-sm-2 control-label">用户名称：</label>
                    <div class="col-sm-4">
                        <input type="text" name="username" class="form-control username" id="inputEmail1" value="李思思">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail2" class="col-sm-2 control-label">昵称：</label>
                    <div class="col-sm-4">
                        <input type="text" name="nickname" class="form-control nickname" id="inputEmail2" value="哈哈思">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">邮箱：</label>
                    <div class="col-sm-4">
                        <input type="text" name="email" class="form-control email" id="inputEmail3" value="520@163.com">
                    </div>
                </div>

                <div class="form-group">
                    <label for="inputPassword3" class="col-sm-2 control-label">用户图标：</label>
                    <div class="col-sm-10">
                        <img src="images/2.jpg" alt="" class="user_pic">
                        <!-- 注意:隐藏file类 用label触发选中图片 -->
                        <!-- input的file型需要设置id 与lable的for相连接 -->
                        <input style="display: none" name="userPic" type="file" id="exampleInputFile">

                        <!-- 给label标签的for属性赋值,值是input标签的id,那这样的话点击label就相当于点击了input -->
                        <br>
                        <label for="exampleInputFile">
                            <img src="./images/uploads_icon.jpg" style="height: 50px;" alt="">
                        </label>
                    </div>
                </div>

                <div class="form-group">
                    <label for="inputEmail4" class="col-sm-2 control-label">密码：</label>
                    <div class="col-sm-4">
                        <input type="password" name="password" class="form-control password" id="inputEmail4"
                            value="12345678">
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-edit">修改</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
    <!-- 引入http地址js文件 -->
    <script src="./js/http.js"></script>
    <script>
        // 入口函数
        $(function () {
            // 一:一打开页面就获取用户个人信息
            // 1.发出ajax请求
            // 封装函数 用于后面直接调用
            function getUserInfo() {
                $.ajax({
                    type: 'get',
                    url: BigNew.user_detail,
                    success: function (backData) {
                        // console.log(backData);
                        if (backData.code == 200) {
                            //注意:遍历对象获取客户信息
                            //因为所需修改的目标都在一个对象中且格式相同所有可用遍历对象的方式获取
                            for (let key in backData.data) {
                                $('.' + key).val(backData.data[key])
                                // 相当于:$('.nickname').val(backData.data.nickname);
                            }
                            // 因设置图片的格式不同,所有单独设置
                            $('.user_pic').attr('src', backData.data.userPic);
                        }

                    }

                })
            };
            getUserInfo();
            // 二:设置图片预览
            // 固定三步骤:
            // 1.使用onchange事件
            $('#exampleInputFile').on('change', function () {
                // 2.获得选中文件,用DOM对象
                let targetFile = this.files[0];
                // 3.利用url对象生成地址
                let url = URL.createObjectURL(targetFile);
                // 4.将地址赋值给预览标签的img
                $('.user_pic').attr('src', url);
            })

            //三:编辑用户信息
            // 1.注册点击事件
            $('.btn-edit').on('click', function (e) {
                e.preventDefault();
                console.log(11);
                // 因为后台需要用formData对象传输 所以先要创建formData对象,获得指定form的带有name属性的值
                // 1.1实例化formdata
                let editText = new FormData($('form')[0]);
                // 1.2做两项检查 检查是否有name属性 name属性是否与接口参数一一对应

                // 2.发出编辑用户信息的ajax请求
                $.ajax({
                    type: 'post',
                    url: BigNew.user_edit,
                    data: editText,
                    contentType: false,
                    processData: false,
                    success: function (backData) {
                        if (backData.code == 200) {
                            // 2.1 提示信息
                            alert(backData.msg);
                            //2.2刷新父窗口页面
                            //注意:用parent刷新父窗口,父窗口就是index.html
                            $.ajax({
                                type: 'get',
                                url: BigNew.user_info,
                                success: function (backData) {
                                    // console.log(backData);
                                    if (backData.code == 200) {
                                        parent.$('.user_info i').text(backData
                                            .data
                                            .nickname);
                                        parent.$('.user_info img').attr('src',
                                            backData
                                            .data.userPic);
                                        parent.$('.user_center_link img').attr(
                                            'src',
                                            backData.data.userPic);

                                    }
                                }



                            })


                        }


                    }
                })
            })



        })
    </script>
</body>

</html>